package org.liquidByte.trafficMustang.androidApp.services.proxy;

import org.liquidByte.trafficMustang.androidApp.proxy.Proxy;
import org.liquidByte.trafficMustang.androidApp.proxy.ProxyRuntimeException;
import org.liquidByte.trafficMustang.androidApp.proxy.RemoteException;
import org.liquidByte.trafficMustang.androidApp.services.DeslocamentoService;
import org.liquidByte.trafficMustang.androidApp.services.dto.DeslocamentoDTO;
import org.liquidByte.trafficMustang.androidApp.services.dto.LocalizacaoDTO;

public class DeslocamentoProxy extends Proxy implements DeslocamentoService {

	@Override
	public void informar(DeslocamentoDTO deslocamento) throws RemoteException, ProxyRuntimeException {
		this.invoke("deslocamento/informar", deslocamento);
	}

	@Override
	public DeslocamentoDTO[] localizar(LocalizacaoDTO origem, LocalizacaoDTO destino) throws RemoteException, ProxyRuntimeException {
		return this.invoke("deslocamento/localizar", DeslocamentoDTO[].class, new LocalizacaoDTO[]{ origem, destino });
	}

	@Override
	public void cancelar(DeslocamentoDTO deslocamento) throws RemoteException, ProxyRuntimeException {
		this.invoke("deslocamento/cancelar", deslocamento);
	}

	@Override
	public void finalizar(DeslocamentoDTO deslocamento) throws RemoteException, ProxyRuntimeException {
		this.invoke("deslocamento/finalizar", deslocamento);
	}
}
